The state of the server system availability on the Internet has become an important factor with the increasing number of e-commerce centers and a steep rise in user traffic to web farms. Content switch modules (CSMs) are server load balancing devices capable of supporting large numbers of servers and server farms. Current CSM technology has a basic fault tolerance capability in which a standby CSM monitors an active CSM for failure. When the standby CSM detects a failure of the active CSM, the standby CSM takes over the server load balancing responsibility of the active CSM.
The CSM switches are Layer 5-7 switches using the Open System Interconnection (OSI) standard model. CSM switches are also referred to as “content” switches. CSM switches are specifically designed for handling web-based IP-traffic, i.e., HTTP. CSM switches provide a robust front-end for Web server farms and cache clusters with unique features for e-commerce, Web hosting, and content delivery.
Web traffic is different from classic IP-based LAN data traffic. First, Web traffic is largely asymmetric, with much larger flows back out to the users from the servers, than the inward-bound flows, such as, a search request followed by a download of results. Second, sessions are constantly brought up and torn down, often with little data involved but with many, many concurrent connections. Finally, there are sudden large session and data spikes at times when popular content is released to the Web. Web switching requires the ability to parse each content request and classify flows using URLs, host tags, and cookies so that each request can be isolated and treated according to business policies defined and stored in a central database.
Not only is the CSM switch designed to handle Web traffic, but it also designed to optimize Web traffic flows by finding the optimal connection to a server or cache device. In turn, this means adding sufficient intelligence into the device in order for it to be able to continually analyze traffic flows and direct that traffic accordingly. Simply knowing basic source and destination data is not enough. To optimize Web traffic, the switch needs to know the content being requested and generated, that is, the CSM switch switches based on the web content. A CSM is able to look inside a URL and switch traffic based on any element, for example, a file extension, within that URL. Cookie content is also analyzed and used for switching.
By knowing what kind of traffic is being requested, the CSM can go beyond basic load balancing of servers and start actively optimizing the entire back-end of the network for the data flows being received. For example, certain types of traffic, such as real audio or video content, require more guarantees of bandwidth availability in order to work sufficiently well compared with “standard” browsing. Also, in this mode of operation, load balancing requires all content to be replicated between all load-balanced servers. This is because load-balanced servers cannot explicitly direct traffic based on the content being requested.
To handle web traffic, the CSM first sets up a traffic “flow”, identifying the specific user and content being requested in order for it to apply the correct policy and route the data request to the best destination point at that given moment in time. Once a flow is established the switch can invoke wire-speed forwarding of that traffic for that session. Throughout the session, the switch monitors the traffic and can provide statistical and management information as a result, such as having ability to aggregate per-flow statistics and report events and alarms for further action.
TCP is an abbreviation of Transmission Control Protocol, one of the main protocols in TCP/IP networks. Whereas the IP protocol deals only with packets, TCP enables two hosts to establish a connection and exchange streams of data. TCP guarantees delivery of data and also guarantees that packets will be delivered in the same order in which they were sent.
The TCP/IP protocol suite comprises two protocols that correspond roughly to the OSI Transport and Session Layers; these protocols are called the Transmission Control Protocol and the User Datagram Protocol (UDP).
TCP provides a virtual circuit (connection-oriented) communication service across the network. TCP includes rules for formatting messages, establishing and terminating virtual circuits, sequencing, flow control, and error correction. Most of the applications in the TCP/IP suite operate over the reliable transport service provided by TCP.
UDP provides an end-to-end datagram (connectionless) service. Some applications, such as those that involve a simple query and response, are better suited to the datagram service of UDP because there is no time lost to virtual circuit establishment and termination. UDP's primary function is to add a port number to the IP address to provide a socket for the application.